import { NgModule } from '@angular/core';
import { NgxEchartsModule } from 'ngx-echarts';
import * as echarts from 'echarts';
import { CommonModule } from '@angular/common';
import { IconsProviderModule } from './icons-provider.module';

import { MultipleRoutingModule } from './multiple-routing.module'

import { NzTableModule } from 'ng-zorro-antd/table';
import { NzDividerModule } from 'ng-zorro-antd/divider';
import { NzModalModule } from 'ng-zorro-antd/modal';
import { NzInputModule } from 'ng-zorro-antd/input';
import { NzIconModule } from 'ng-zorro-antd/icon';
import { NzTabsModule } from 'ng-zorro-antd/tabs';
import { NzSelectModule } from 'ng-zorro-antd/select';
import { NzSwitchModule } from 'ng-zorro-antd/switch';
import { NzCheckboxModule } from 'ng-zorro-antd/checkbox';
import { NzButtonModule } from 'ng-zorro-antd/button';
import { NzRadioModule } from 'ng-zorro-antd/radio';
import { NzPaginationModule } from 'ng-zorro-antd/pagination';
import { NzEmptyModule } from 'ng-zorro-antd/empty';
import { NzUploadModule } from 'ng-zorro-antd/upload';
import { NzCollapseModule } from 'ng-zorro-antd/collapse';
import { FormsModule } from '@angular/forms';
import { NzMenuModule } from 'ng-zorro-antd/menu';
import {NzDropDownModule} from 'ng-zorro-antd/dropdown';
import { NzMessageModule } from 'ng-zorro-antd/message';
import { NzProgressModule } from 'ng-zorro-antd/progress';
import { NzTimelineModule } from 'ng-zorro-antd/timeline';
import { NzDrawerModule } from 'ng-zorro-antd/drawer';
import { NzInputNumberModule } from 'ng-zorro-antd/input-number';
import { NzTreeModule } from 'ng-zorro-antd/tree';
import { NzAlertModule } from 'ng-zorro-antd/alert';
import { NzSliderModule } from 'ng-zorro-antd/slider';
import { NzTreeSelectModule } from 'ng-zorro-antd/tree-select';

import { MultipleComponent } from './multiple.component';
import { MultipleTrainComponent } from './components/multiple-train/multiple-train.component';
import { MultipleAssessmentComponent } from './components/multiple-assessment/multiple-assessment.component';
import { MultipleAssessmentDetailComponent } from './components/multiple-assessment-detail/multiple-assessment-detail.component';

import { IconDefinition } from '@ant-design/icons-angular';


import * as AllIcons from '@ant-design/icons-angular/icons';

const antDesignIcons = AllIcons as {
  [key: string]: IconDefinition;
};
const icons: IconDefinition[] = Object.keys(antDesignIcons).map(key => antDesignIcons[key])

@NgModule({
  declarations: [
    MultipleComponent,
    MultipleTrainComponent,
    MultipleAssessmentComponent,
    MultipleAssessmentDetailComponent
  ],
  imports: [
    CommonModule,
    MultipleRoutingModule,IconsProviderModule,
    NzTableModule,NzDrawerModule,NzAlertModule,
    NzDividerModule, NzModalModule, NzInputModule, NzIconModule, NzTabsModule,
    NzSelectModule, NzSwitchModule, NzCheckboxModule, FormsModule, NzButtonModule,
    NzRadioModule, NzPaginationModule, NzEmptyModule, NzUploadModule, NzCollapseModule,
    NzMenuModule,NzTimelineModule,NzTreeModule,
    NzMessageModule ,NzInputNumberModule,NzSliderModule,
    NzDropDownModule,NzProgressModule,NzTreeSelectModule,
    NgxEchartsModule.forRoot({echarts}),NzIconModule.forRoot(icons)
  ]
})
export class MultipleModule { }
